﻿#region Using

using System.Collections.Generic;

using Common.Base;

using CommunicationLibrary.TransportData;

#endregion

namespace ServerApplication.Interfaces
{
    public interface IGameSessionManagerToCore
    {
        void SendGameState(GameState state, IEnumerable<Identifiable> receivers);

        void SendPlayerLost(Identifiable player, IEnumerable<Identifiable> receivers);

        void SendPlayerWon(Identifiable player);

        void SendGameReady(GameState startingState, IEnumerable<Identifiable> players);

        void SendGameStarted(IEnumerable<Identifiable> players);

        void SendGamePaused(IEnumerable<Identifiable> players);

        void SendGameResumed(IEnumerable<Identifiable> players);
    }
}